{"version":3,"file":"../pages/[chapterId]/reflections.js","mappings":"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","sources":["webpack://quran.com/src/pages/[chapterId]/reflections.tsx","webpack://quran.com/sentry-wrapper-module","webpack://quran.com/./src/components/QuranReader/TafsirView/TafsirView.module.scss","webpack://quran.com/./src/components/dls/Skeleton/Skeleton.module.scss","webpack://quran.com/./src/pages/index.module.scss","webpack://quran.com/./src/components/QuranReader/ReflectionView/ReflectionBodyContainer/index.tsx","webpack://quran.com/./src/components/QuranReader/TafsirView/TafsirSkeleton.tsx","webpack://quran.com/./src/components/QuranReader/observer.ts","webpack://quran.com/./src/components/dls/Skeleton/Skeleton.tsx","webpack://quran.com/./src/hooks/useBrowserLayoutEffect.ts","webpack://quran.com/./src/hooks/useGlobalIntersectionObserverWithDelay.ts","webpack://quran.com/./src/lib/og.ts","webpack://quran.com/./src/utils/auth/qf/api.ts","webpack://quran.com/./src/utils/auth/qf/apiPaths.ts","webpack://quran.com/./types/QuranReflect/Tab.ts","webpack://quran.com/./src/utils/quranReflect/apiPaths.ts","webpack://quran.com/./src/utils/staticPageGeneration.ts","webpack://quran.com/external commonjs \"@reduxjs/toolkit\"","webpack://quran.com/external commonjs \"@sentry/nextjs\"","webpack://quran.com/external commonjs \"classnames\"","webpack://quran.com/external commonjs \"humps\"","webpack://quran.com/external commonjs \"lodash/findKey\"","webpack://quran.com/external commonjs \"lodash/groupBy\"","webpack://quran.com/external commonjs \"lodash/random\"","webpack://quran.com/external commonjs \"lodash/range\"","webpack://quran.com/external commonjs \"next-seo\"","webpack://quran.com/external commonjs \"next-translate/useTranslation\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/app-router-context.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/head-manager-context.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/i18n/detect-domain-locale.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/i18n/normalize-locale-path.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/is-plain-object.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/loadable.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/mitt.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/page-path/denormalize-page-path.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router-context.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/add-locale.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/add-path-prefix.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/compare-states.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/format-next-pathname-info.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/format-url.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/get-asset-path-from-route.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/get-next-pathname-info.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/is-bot.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/is-dynamic.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/parse-path.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/parse-relative-url.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/path-has-prefix.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/querystring.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/remove-trailing-slash.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/resolve-rewrites.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/route-matcher.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/router/utils/route-regex.js\"","webpack://quran.com/external commonjs \"next/dist/shared/lib/utils.js\"","webpack://quran.com/external commonjs \"next/router\"","webpack://quran.com/external commonjs \"react\"","webpack://quran.com/external commonjs \"react/jsx-runtime\"","webpack://quran.com/external commonjs \"refresh-fetch\"","webpack://quran.com/external module \"@radix-ui/react-tooltip\"","webpack://quran.com/external module \"firebase/compat/analytics\"","webpack://quran.com/external module \"firebase/compat/app\"","webpack://quran.com/external module \"js-cookie\"","webpack://quran.com/external module \"swr\"","webpack://quran.com/external module \"swr/immutable\"","webpack://quran.com/external node-commonjs \"querystring\""],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable react-func/max-lines-per-function */\nimport React from 'react';\n\nimport { NextPage, GetStaticProps, GetStaticPaths } from 'next';\nimport useTranslation from 'next-translate/useTranslation';\nimport { SWRConfig } from 'swr';\n\nimport { fetcher } from '@/api';\nimport NextSeoWrapper from '@/components/NextSeoWrapper';\nimport ReflectionBodyContainer from '@/components/QuranReader/ReflectionView/ReflectionBodyContainer';\nimport { getChapterOgImageUrl } from '@/lib/og';\nimport Error from '@/pages/_error';\nimport layoutStyle from '@/pages/index.module.scss';\nimport {\n getQuranReaderStylesInitialState,\n getTranslationsInitialState,\n} from '@/redux/defaultSettings/util';\nimport { getDefaultWordFields, getMushafId } from '@/utils/api';\nimport { makeVersesUrl } from '@/utils/apiPaths';\nimport { getChapterData, getAllChaptersData } from '@/utils/chapter';\nimport { getLanguageAlternates, toLocalizedNumber } from '@/utils/locale';\nimport {\n getCanonicalUrl,\n getVerseReflectionNavigationUrl,\n scrollWindowToTop,\n} from '@/utils/navigation';\nimport { getAyahReflections, makeAyahReflectionsUrl } from '@/utils/quranReflect/apiPaths';\nimport {\n REVALIDATION_PERIOD_ON_ERROR_SECONDS,\n ONE_WEEK_REVALIDATION_PERIOD_SECONDS,\n} from '@/utils/staticPageGeneration';\nimport { isValidVerseKey } from '@/utils/validator';\nimport { getVerseAndChapterNumbersFromKey } from '@/utils/verse';\nimport { ChapterResponse } from 'types/ApiResponses';\nimport ChaptersData from 'types/ChaptersData';\n\ntype AyahReflectionProp = {\n chapter?: ChapterResponse;\n hasError?: boolean;\n verseNumber?: string;\n chapterId?: string;\n chaptersData: ChaptersData;\n fallback?: any;\n};\n\nconst SelectedAyahReflection: NextPage = ({\n hasError,\n chapter,\n verseNumber,\n chapterId,\n fallback,\n}) => {\n const { t, lang } = useTranslation('quran-reader');\n if (hasError) {\n return ;\n }\n\n const navigationUrl = getVerseReflectionNavigationUrl(`${chapterId}:${verseNumber}`);\n return (\n <>\n \n {/* @ts-ignore */}\n \n
\n
\n
\n {\n return (\n
\n {surahAndAyahSelection}\n {body}\n
\n );\n }}\n />\n
\n
\n
\n
\n \n );\n};\n\nexport const getStaticProps: GetStaticProps = async ({ params, locale }) => {\n const { chapterId } = params;\n const verseKey = String(chapterId);\n const chaptersData = await getAllChaptersData(locale);\n if (!isValidVerseKey(chaptersData, verseKey)) {\n return { notFound: true };\n }\n const [chapterNumber, verseNumber] = getVerseAndChapterNumbersFromKey(verseKey);\n const { quranFont, mushafLines } = getQuranReaderStylesInitialState(locale);\n const translations = getTranslationsInitialState(locale).selectedTranslations;\n try {\n const verseReflectionUrl = makeAyahReflectionsUrl({\n surahId: chapterNumber,\n ayahNumber: verseNumber,\n locale,\n });\n\n const mushafId = getMushafId(quranFont, mushafLines).mushaf;\n const apiParams = {\n ...getDefaultWordFields(quranFont),\n translationFields: 'resource_name,language_id',\n translations: translations.join(','),\n mushaf: mushafId,\n from: `${chapterNumber}:${verseNumber}`,\n to: `${chapterNumber}:${verseNumber}`,\n };\n\n const versesUrl = makeVersesUrl(chapterNumber, locale, apiParams);\n\n const [verseReflectionsData, versesData] = await Promise.all([\n getAyahReflections(verseReflectionUrl),\n fetcher(versesUrl),\n ]);\n\n const fallback = {\n [verseReflectionUrl]: verseReflectionsData,\n [versesUrl]: versesData,\n };\n\n return {\n props: {\n chaptersData,\n chapterId: chapterNumber,\n chapter: { chapter: getChapterData(chaptersData, chapterNumber) },\n verseNumber,\n fallback,\n },\n revalidate: ONE_WEEK_REVALIDATION_PERIOD_SECONDS, // verses will be generated at runtime if not found in the cache, then cached for subsequent requests for 7 days.\n };\n } catch (error) {\n return {\n props: { hasError: true },\n revalidate: REVALIDATION_PERIOD_ON_ERROR_SECONDS, // 35 seconds will be enough time before we re-try generating the page again.\n };\n }\n};\n\nexport const getStaticPaths: GetStaticPaths = async () => ({\n paths: [], // no pre-rendered chapters at build time.\n fallback: 'blocking', // will server-render pages on-demand if the path doesn't exist.\n});\n\nexport default SelectedAyahReflection;\n","import * as Sentry from '@sentry/nextjs';\nimport * as serverComponentModule from '__SENTRY_WRAPPING_TARGET_FILE__.cjs';\nexport * from '__SENTRY_WRAPPING_TARGET_FILE__.cjs';\n\n/*\n * This file is a template for the code which will be substituted when our webpack loader handles non-API files in the\n * `pages/` directory.\n *\n * We use `__SENTRY_WRAPPING_TARGET_FILE__.cjs` as a placeholder for the path to the file being wrapped. Because it's not a real package,\n * this causes both TS and ESLint to complain, hence the pragma comments below.\n */\n\nconst userPageModule = serverComponentModule ;\n\nconst pageComponent = userPageModule ? userPageModule.default : undefined;\n\nconst origGetInitialProps = pageComponent ? pageComponent.getInitialProps : undefined;\nconst origGetStaticProps = userPageModule ? userPageModule.getStaticProps : undefined;\nconst origGetServerSideProps = userPageModule ? userPageModule.getServerSideProps : undefined;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst getInitialPropsWrappers = {\n '/_app': Sentry.wrapAppGetInitialPropsWithSentry,\n '/_document': Sentry.wrapDocumentGetInitialPropsWithSentry,\n '/_error': Sentry.wrapErrorGetInitialPropsWithSentry,\n};\n\nconst getInitialPropsWrapper = getInitialPropsWrappers['/[chapterId]/reflections'] || Sentry.wrapGetInitialPropsWithSentry;\n\nif (pageComponent && typeof origGetInitialProps === 'function') {\n pageComponent.getInitialProps = getInitialPropsWrapper(origGetInitialProps) ;\n}\n\nconst getStaticProps =\n typeof origGetStaticProps === 'function'\n ? Sentry.wrapGetStaticPropsWithSentry(origGetStaticProps, '/[chapterId]/reflections')\n : undefined;\nconst getServerSideProps =\n typeof origGetServerSideProps === 'function'\n ? Sentry.wrapGetServerSidePropsWithSentry(origGetServerSideProps, '/[chapterId]/reflections')\n : undefined;\n\nconst pageWrapperTemplate = pageComponent ? Sentry.wrapPageComponentWithSentry(pageComponent ) : pageComponent;\n\nexport { pageWrapperTemplate as default, getServerSideProps, getStaticProps };\n","// Exports\nmodule.exports = {\n\t\"container\": \"TafsirView_container__R9G7I\",\n\t\"tafsirName\": \"TafsirView_tafsirName__QPOiO\",\n\t\"tafsirContainer\": \"TafsirView_tafsirContainer__g2rhW\",\n\t\"rtl\": \"TafsirView_rtl__8pRLP\",\n\t\"surahAndAyahSelectionContainer\": \"TafsirView_surahAndAyahSelectionContainer__W96nf\",\n\t\"tafsirSelectionContainer\": \"TafsirView_tafsirSelectionContainer__QSkE3\",\n\t\"tafsirSelectionItem\": \"TafsirView_tafsirSelectionItem__GTJvw\",\n\t\"tafsirItemSelected\": \"TafsirView_tafsirItemSelected__SXceL\",\n\t\"separatorContainer\": \"TafsirView_separatorContainer__diS8n\",\n\t\"verseTextContainer\": \"TafsirView_verseTextContainer__A7tZ_\",\n\t\"selectionItem\": \"TafsirView_selectionItem__FJdhi\",\n\t\"ayahSelection\": \"TafsirView_ayahSelection__jWULb\",\n\t\"tafsirSkeletonItem\": \"TafsirView_tafsirSkeletonItem__q5sNk\",\n\t\"ayahSekletonItem\": \"TafsirView_ayahSekletonItem__B_nJN\",\n\t\"tafsirSkeletonItem1\": \"TafsirView_tafsirSkeletonItem1__nLGRk\",\n\t\"tafsirSkeletonItem2\": \"TafsirView_tafsirSkeletonItem2__aaEJy\",\n\t\"tafsirSkeletonItem3\": \"TafsirView_tafsirSkeletonItem3__NqYKV\",\n\t\"tafsirSelectionSkeleton\": \"TafsirView_tafsirSelectionSkeleton__3oq7k\",\n\t\"languageSelection\": \"TafsirView_languageSelection__8EFqZ\",\n\t\"tafsir-font-size-1\": \"TafsirView_tafsir-font-size-1__sLRnq\",\n\t\"tafsir-font-size-2\": \"TafsirView_tafsir-font-size-2__JLiR2\",\n\t\"tafsir-font-size-3\": \"TafsirView_tafsir-font-size-3__K0LBa\",\n\t\"tafsir-font-size-4\": \"TafsirView_tafsir-font-size-4__KrD1k\",\n\t\"tafsir-font-size-5\": \"TafsirView_tafsir-font-size-5__ri_Mr\",\n\t\"tafsir-font-size-6\": \"TafsirView_tafsir-font-size-6__FvBko\",\n\t\"tafsir-font-size-7\": \"TafsirView_tafsir-font-size-7__oS0XU\",\n\t\"tafsir-font-size-8\": \"TafsirView_tafsir-font-size-8__1U_43\",\n\t\"tafsir-font-size-9\": \"TafsirView_tafsir-font-size-9__6VJC2\",\n\t\"tafsir-font-size-10\": \"TafsirView_tafsir-font-size-10__zRYWI\"\n};\n","// Exports\nmodule.exports = {\n\t\"baseSize\": \"Skeleton_baseSize__RsOkc\",\n\t\"skeleton\": \"Skeleton_skeleton__u2Uso\",\n\t\"active\": \"Skeleton_active__5df2K\",\n\t\"loading\": \"Skeleton_loading__iZh50\",\n\t\"rounded\": \"Skeleton_rounded__ftYYr\",\n\t\"content\": \"Skeleton_content__knKtV\"\n};\n","// Exports\nmodule.exports = {\n\t\"pageContainer\": \"index_pageContainer__Pxtn3\",\n\t\"loadingContainer\": \"index_loadingContainer__WEZFc\",\n\t\"flow\": \"index_flow__rCTR5\",\n\t\"flowItem\": \"index_flowItem__GnXWz\",\n\t\"additionalVerticalGap\": \"index_additionalVerticalGap__nzYz6\",\n\t\"fullWidth\": \"index_fullWidth__1n4ux\"\n};\n","import { useCallback, useState } from 'react';\n\nimport dynamic from 'next/dynamic';\nimport useTranslation from 'next-translate/useTranslation';\n\nimport DataFetcher from '@/components/DataFetcher';\nimport { REFLECTIONS_OBSERVER_ID } from '@/components/QuranReader/observer';\nimport TafsirSkeleton from '@/components/QuranReader/TafsirView/TafsirSkeleton';\nimport useGlobalIntersectionObserverWithDelay from '@/hooks/useGlobalIntersectionObserverWithDelay';\nimport { isLoggedIn } from '@/utils/auth/login';\nimport { postReflectionViews } from '@/utils/auth/qf/api';\nimport {\n makeAyahReflectionsUrl,\n postReflectionViews as postReflectionViewsToQuranReflect,\n} from '@/utils/quranReflect/apiPaths';\nimport AyahReflectionsResponse from 'types/QuranReflect/AyahReflectionsResponse';\n\nconst ReflectionSurahAndAyahSelection = dynamic(() => import('./ReflectionSurahAndAyahSelection'), {\n ssr: false,\n});\nconst ReflectionBody = dynamic(() => import('./ReflectionBody'), {\n ssr: false,\n loading: TafsirSkeleton,\n});\n\ntype ReflectionBodyProps = {\n initialChapterId: string;\n initialVerseNumber: string;\n scrollToTop: () => void;\n render: (renderProps: { surahAndAyahSelection: JSX.Element; body: JSX.Element }) => JSX.Element;\n};\n\nconst ReflectionBodyContainer = ({\n render,\n initialChapterId,\n initialVerseNumber,\n scrollToTop,\n}: ReflectionBodyProps) => {\n const [selectedChapterId, setSelectedChapterId] = useState(initialChapterId);\n const [selectedVerseNumber, setSelectedVerseNumber] = useState(initialVerseNumber);\n const { lang } = useTranslation();\n\n /**\n * Handle when the reflection is viewed:\n *\n * 1. If the user is logged in, we will call QDC's backend API.\n * 2. Otherwise, we will call QR's API directly.\n */\n const onReflectionViewed = useCallback((reflectionContainer: Element) => {\n const postId = reflectionContainer.getAttribute('data-post-id');\n if (isLoggedIn()) {\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n postReflectionViews(postId).catch(() => {});\n } else {\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n postReflectionViewsToQuranReflect(postId).catch(() => {});\n }\n }, []);\n useGlobalIntersectionObserverWithDelay(\n { threshold: 1 },\n onReflectionViewed,\n REFLECTIONS_OBSERVER_ID,\n 'postId',\n 'countAsViewedAfter',\n );\n\n const renderBody = useCallback(\n (data: AyahReflectionsResponse) => (\n \n ),\n [scrollToTop, selectedChapterId, selectedVerseNumber],\n );\n\n const body = (\n \n );\n\n return render({\n surahAndAyahSelection: (\n \n ),\n body,\n });\n};\n\nexport default ReflectionBodyContainer;\n","import classNames from 'classnames';\nimport range from 'lodash/range';\n\nimport styles from './TafsirView.module.scss';\n\nimport Skeleton from '@/dls/Skeleton/Skeleton';\n\nconst TafsirSkeleton = () => {\n return (\n <>\n \n {range(1, 15).map((i) => (\n \n ))}\n \n );\n};\n\nexport default TafsirSkeleton;\n","/**\n * The top -131.6px was calculated based on:\n *\n * 1. the height of emptySpacePlaceholder of navbar (3.6rem).\n * 2. the top padding of the QuranReader container (2rem).\n * 3. the top and bottom margin of the ReadingPreferenceSwitcher container (1.625rem).\n * 4. the top margin of the TranslationView container (1rem).\n *\n * and the total is 8.225rem around 131.6 pixels.\n */\nconst DEFAULT_ROOT_MARGIN = '-131.6px 0px -68% 0px';\nconst OBSERVER_THRESHOLD = 0.1;\nexport const QURAN_READER_OBSERVER_ID = 'quranReaderObserver';\nexport const REFLECTIONS_OBSERVER_ID = 'reflectionsObserver';\n/**\n * the top -115.6px was calculated based on:\n *\n * 1. the height of emptySpacePlaceholder of navbar (3.6rem).\n * 2. the top padding of the QuranReader container (2rem).\n * 3. the top and bottom margin of the ReadingPreferenceSwitcher container (1.625rem).\n *\n * and the total is 7.225rem around 115.6 pixels.\n */\nconst READING_MODE_ROOT_MARGIN = '-115.6px 0px -70% 0px';\n\n/**\n * Get the observer options based on the reading preference.\n *\n * @param {boolean} isReadingPreference\n * @returns {{rootMargin: string, threshold: number | number[]}}\n */\nexport const getOptions = (\n isReadingPreference: boolean,\n): { rootMargin: string; threshold: number | number[] } => ({\n rootMargin: isReadingPreference ? READING_MODE_ROOT_MARGIN : DEFAULT_ROOT_MARGIN,\n threshold: OBSERVER_THRESHOLD,\n});\n\n/**\n * Get the payload that will be dispatched to Redux to set the last read verse.\n *\n * @param {Element} element\n * @returns {{verseKey: string,chapterId: string,page: string,hizb: string}}\n */\nexport const getObservedVersePayload = (\n element: Element,\n): { verseKey: string; chapterId: string; page: string; hizb: string } => ({\n verseKey: element.getAttribute('data-verse-key'),\n chapterId: element.getAttribute('data-chapter-id'),\n page: element.getAttribute('data-page'),\n hizb: element.getAttribute('data-hizb'),\n});\n","import classNames from 'classnames';\n\nimport styles from './Skeleton.module.scss';\n\ntype SkeletonProps = {\n children?: React.ReactNode;\n isRounded?: boolean;\n isSquared?: boolean;\n isActive?: boolean;\n className?: string;\n};\n\nconst Skeleton = ({\n children,\n isRounded,\n isSquared,\n isActive = true,\n className,\n}: SkeletonProps) => {\n return (\n \n {children && {children}}\n \n );\n};\n\nexport default Skeleton;\n","import { useLayoutEffect } from 'react';\n\n/**\n * This is needed to avoid having the following warning:\n * Warning: useLayoutEffect does nothing on the server, because its effect cannot be encoded into the server renderer's output format.\n * The solution is inspired by this thread\n * {@link https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85}\n */\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nexport default typeof window !== 'undefined' ? useLayoutEffect : () => {};\n","/* eslint-disable react-func/max-lines-per-function */\nimport { useCallback, useRef } from 'react';\n\nimport useBrowserLayoutEffect from '@/hooks/useBrowserLayoutEffect';\n\nconst isDev = process.env.NEXT_PUBLIC_VERCEL_ENV === 'development';\n\n/**\n * Sets a debugging text to element debugger node if we are in a dev environment\n * and the element debugger paragraph node exists.\n *\n * @param {string} text\n * @param {HTMLElement} intersectionDebuggerNode\n *\n */\nconst setIntersectionDebuggerNodeText = (text: string, intersectionDebuggerNode: HTMLElement) => {\n if (!isDev || !intersectionDebuggerNode) {\n return;\n }\n // eslint-disable-next-line no-param-reassign\n intersectionDebuggerNode.textContent = `OBSERVER DEBUGGER: ${text}`;\n};\n\n/**\n * A hook that will create a global observer and inject it into window so that it's\n * globally available. Once it's created, it can be used by any element that would like\n * to be observed using that observer using {@see useObserverElement} hook. This hook\n * is meant to be used for delayed element visibility callback.\n *\n * @param {IntersectionObserverInit} options\n * @param {(element:Element)=>void} onElementVisible\n * @param {string} observerId the name of the observer\n * @param {string} elementIdKey the key of the unique identifier of each element.\n * @param {string} delayForMSKey the key holding the number of milliseconds after which the observer should trigger the callback\n */\nconst useGlobalIntersectionObserverWithDelay = (\n { threshold = 1, root = null, rootMargin = '0%' }: IntersectionObserverInit,\n onElementVisible: (element: Element) => void,\n observerId: string,\n elementIdKey: string,\n delayForMSKey: string,\n) => {\n /**\n * An object that will hold a reference of each unique identifier and\n * the ID of the timeout function that will trigger when the element\n * is visible for delayForMS number of seconds.\n */\n const timeouts = useRef>(new Map());\n const updateEntry = useCallback(\n (entries: IntersectionObserverEntry[]): void => {\n entries.forEach((visibleEntry) => {\n let elementIntersectionDebuggerNode: HTMLElement;\n if (isDev) {\n const nodes = visibleEntry.target.getElementsByClassName('debugger');\n // if at least one debugger node was found (should always be there but just to be extra sure)\n if (nodes.length) {\n elementIntersectionDebuggerNode = nodes[0] as HTMLElement;\n }\n }\n const targetNode = visibleEntry.target as HTMLElement;\n const elementId = targetNode.dataset[elementIdKey];\n const delayForMS = Number(targetNode.dataset[delayForMSKey]);\n // if the element content container is interacting\n if (visibleEntry.isIntersecting) {\n setIntersectionDebuggerNodeText(\n `Element is fully visible, triggering callback in ${delayForMS / 1000} seconds...`,\n elementIntersectionDebuggerNode,\n );\n // Call the API after delayForMS\n timeouts.current.set(\n elementId,\n window.setTimeout(() => {\n onElementVisible(visibleEntry.target);\n setIntersectionDebuggerNodeText(\n `Element callback triggered`,\n elementIntersectionDebuggerNode,\n );\n }, delayForMS),\n );\n } else {\n // if it's no longer intersecting, clear the timeout\n clearTimeout(timeouts.current.get(elementId));\n /**\n * Delete the timeout function's ID from the global array since it's no longer\n * needed and next time if the same element intersects, a new ID will be generated\n * for that element.\n */\n timeouts.current.delete(elementId);\n setIntersectionDebuggerNodeText(\n `Element is not fully visible, won't trigger callback`,\n elementIntersectionDebuggerNode,\n );\n }\n });\n },\n [delayForMSKey, elementIdKey, onElementVisible],\n );\n\n /**\n * We need to assign to window before render is done since we want to the observer to be available by the time rendering is done so that the elements to be observed can use it.\n * {@see https://kentcdodds.com/blog/useeffect-vs-uselayouteffect}\n */\n useBrowserLayoutEffect(() => {\n const hasIOSupport = !!window.IntersectionObserver;\n if (!hasIOSupport) return undefined;\n\n // no need to create a new observer if it already exists.\n if (!window[observerId]) {\n window[observerId] = new IntersectionObserver(updateEntry, {\n threshold,\n root,\n rootMargin,\n });\n }\n return () => {\n // manually clear all the timeouts (if any are still around)\n timeouts.current.forEach((value) => {\n clearTimeout(value);\n });\n if (window[observerId]) {\n window[observerId].disconnect();\n window[observerId] = undefined;\n }\n };\n }, [root, rootMargin, threshold, updateEntry, observerId]);\n};\n\nexport default useGlobalIntersectionObserverWithDelay;\n","const BASE_OG_URL = 'https://og.qurancdn.com';\n\ninterface BaseOgOptions {\n locale: string;\n}\n\nexport const getDefaultOgImageUrl = ({ locale }: BaseOgOptions) =>\n `${BASE_OG_URL}/api/og?lang=${locale}`;\n\nexport const getAboutTheQuranImageUrl = ({ locale }: BaseOgOptions) =>\n `${BASE_OG_URL}/api/og/about-the-quran?lang=${locale}`;\n\nexport const getLearningPlansImageUrl = ({ locale }: BaseOgOptions) =>\n `${BASE_OG_URL}/api/og/learning-plans?lang=${locale}`;\n\nexport const getChapterOgImageUrl = ({\n chapterId,\n locale,\n verseNumber,\n}: BaseOgOptions & {\n chapterId: string | number;\n verseNumber?: string | number;\n}) => {\n const url = `${BASE_OG_URL}/api/og/chapter/${chapterId}?lang=${locale}`;\n\n if (!verseNumber) return url;\n return `${url}&verse=${verseNumber}`;\n};\n","import {\n makeFollowUserUrl,\n makeGetUserReflectionsUrl,\n makePostReflectionViewsUrl,\n makeIsUserFollowedUrl,\n makeQuranicCalendarPostOfWeekUrl,\n} from './apiPaths';\n\nimport AyahReflection from '@/types/QuranReflect/AyahReflection';\nimport { postRequest, privateFetcher } from '@/utils/auth/api';\nimport GetAllUserReflectionsQueryParams from '@/utils/auth/types/GetAllUserReflectionsQueryParams';\n\nexport const postReflectionViews = async (postId: string): Promise<{ success: boolean }> =>\n postRequest(makePostReflectionViewsUrl(postId), {});\n\nexport const followUser = async (usernameOrId: string): Promise<{ success: boolean }> =>\n postRequest(makeFollowUserUrl(usernameOrId), {});\n\nexport const isUserFollowed = async (\n usernameOrId: string,\n): Promise<{ success: boolean; followed: boolean }> => {\n return privateFetcher(makeIsUserFollowedUrl(usernameOrId));\n};\n\nexport const getAllUserReflections = async (params: GetAllUserReflectionsQueryParams) => {\n return privateFetcher(makeGetUserReflectionsUrl(params));\n};\n\nexport const getQuranicCalendarPostOfWeek = async (\n weekNumber: number,\n): Promise<{ post: AyahReflection }> => {\n return privateFetcher(makeQuranicCalendarPostOfWeekUrl(weekNumber));\n};\n","import { makeUrl } from '@/utils/auth/apiPaths';\nimport GetAllUserReflectionsQueryParams from '@/utils/auth/types/GetAllUserReflectionsQueryParams';\n\nconst getPrefixedUrl = (url: string) => `qf/${url}`;\n\nexport const makePostReflectionViewsUrl = (postId: string) =>\n makeUrl(getPrefixedUrl(`posts/${postId}/views`));\n\nexport const makeFollowUserUrl = (userNameOrId: string) =>\n makeUrl(getPrefixedUrl(`users/${userNameOrId}/follow`));\n\nexport const makeIsUserFollowedUrl = (userNameOrId: string) =>\n makeUrl(getPrefixedUrl(`users/${userNameOrId}/is-followed`));\n\nexport const makeGetUserReflectionsUrl = (params?: GetAllUserReflectionsQueryParams) =>\n makeUrl(getPrefixedUrl('posts'), params as any);\n\nexport const makeQuranicCalendarPostOfWeekUrl = (weekNumber: number) =>\n makeUrl(getPrefixedUrl(`quranic-calendar/${weekNumber}`));\n","enum Tab {\n MostPopular = 'most_popular',\n Newest = 'newest',\n Feed = 'feed',\n Public = 'public',\n}\n\nexport default Tab;\n","/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { fetcher } from '@/api';\nimport stringify from '@/utils/qs-stringify';\nimport AyahReflectionsRequestParams from 'types/QuranReflect/AyahReflectionsRequestParams';\nimport AyahReflectionsResponse from 'types/QuranReflect/AyahReflectionsResponse';\nimport Tab from 'types/QuranReflect/Tab';\n\nconst STAGING_API_HOST = 'https://quranreflect.org';\nconst PRODUCTION_API_HOST = 'https://quranreflect.com';\nconst isProd = process.env.NEXT_PUBLIC_VERCEL_ENV === 'production';\n\n// env variables in Vercel can't be dynamic, we have to hardcode the urls here. https://stackoverflow.com/questions/44342226/next-js-error-only-absolute-urls-are-supported\nexport const API_HOST = isProd ? PRODUCTION_API_HOST : STAGING_API_HOST;\n\nexport const makeQuranReflectApiUrl = (path: string, parameters = {}): string => {\n const params = {\n client_auth_token: process.env.NEXT_PUBLIC_QURAN_REFLECT_TOKEN,\n ...parameters,\n };\n return `${API_HOST}/${path}?${stringify(params)}`;\n};\n\n/* eslint-disable import/prefer-default-export */\nexport const makeAyahReflectionsUrl = ({\n surahId,\n ayahNumber,\n locale,\n page = 1,\n tab = Tab.MostPopular,\n}: AyahReflectionsRequestParams) => {\n const surahNumber = Number(surahId) + 1;\n return makeQuranReflectApiUrl('posts.json', {\n 'q[filters_attributes][0][chapter_id]': surahNumber,\n 'q[filters_attributes][0][from]': ayahNumber,\n 'q[filters_attributes][0][to]': ayahNumber,\n 'q[filters_operation]': 'OR',\n page,\n tab,\n lang: locale,\n feed: true,\n });\n};\n\nconst makeReflectionViewsUrl = (postId: string) => {\n return makeQuranReflectApiUrl(`v1/posts/${postId}/views`);\n};\n\nexport const postReflectionViews = async (postId: string): Promise =>\n fetcher(makeReflectionViewsUrl(postId), {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n });\n\nexport const getAyahReflections = async (\n ayahReflectionsUrl: string,\n): Promise => fetcher(ayahReflectionsUrl);\n","export const REVALIDATION_PERIOD_ON_ERROR_SECONDS = 604800; // 7 days. TODO: @osama update the naming + value when we revert this back\nexport const ONE_DAY_REVALIDATION_PERIOD_SECONDS = 86400; // 1 day\nexport const ONE_WEEK_REVALIDATION_PERIOD_SECONDS = 604800; // 7 days\nexport const ONE_MONTH_REVALIDATION_PERIOD_SECONDS = 2592000; // 30 days\n","module.exports = require(\"@reduxjs/toolkit\");","module.exports = require(\"@sentry/nextjs\");","module.exports = require(\"classnames\");","module.exports = require(\"humps\");","module.exports = require(\"lodash/findKey\");","module.exports = require(\"lodash/groupBy\");","module.exports = require(\"lodash/random\");","module.exports = require(\"lodash/range\");","module.exports = require(\"next-seo\");","module.exports = require(\"next-translate/useTranslation\");","module.exports = require(\"next/dist/shared/lib/app-router-context.js\");","module.exports = require(\"next/dist/shared/lib/head-manager-context.js\");","module.exports = require(\"next/dist/shared/lib/i18n/detect-domain-locale.js\");","module.exports = require(\"next/dist/shared/lib/i18n/normalize-locale-path.js\");","module.exports = require(\"next/dist/shared/lib/is-plain-object.js\");","module.exports = require(\"next/dist/shared/lib/loadable.js\");","module.exports = require(\"next/dist/shared/lib/mitt.js\");","module.exports = require(\"next/dist/shared/lib/page-path/denormalize-page-path.js\");","module.exports = require(\"next/dist/shared/lib/router-context.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/add-locale.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/add-path-prefix.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/compare-states.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/format-next-pathname-info.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/format-url.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/get-asset-path-from-route.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/get-next-pathname-info.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/is-bot.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/is-dynamic.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/parse-path.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/parse-relative-url.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/path-has-prefix.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/querystring.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/remove-trailing-slash.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/resolve-rewrites.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/route-matcher.js\");","module.exports = require(\"next/dist/shared/lib/router/utils/route-regex.js\");","module.exports = require(\"next/dist/shared/lib/utils.js\");","module.exports = require(\"next/router\");","module.exports = require(\"react\");","module.exports = require(\"react/jsx-runtime\");","module.exports = require(\"refresh-fetch\");","module.exports = import(\"@radix-ui/react-tooltip\");;","module.exports = import(\"firebase/compat/analytics\");;","module.exports = import(\"firebase/compat/app\");;","module.exports = import(\"js-cookie\");;","module.exports = import(\"swr\");;","module.exports = import(\"swr/immutable\");;","module.exports = require(\"querystring\");"],"names":["SelectedAyahReflection","hasError","chapter","verseNumber","chapterId","fallback","t","lang","useTranslation","_jsx","Error","statusCode","navigationUrl","getVerseReflectionNavigationUrl","_jsxs","_Fragment","NextSeoWrapper","title","transliteratedName","toLocalizedNumber","Number","image","getChapterOgImageUrl","locale","imageWidth","imageHeight","canonical","getCanonicalUrl","languageAlternates","getLanguageAlternates","description","ayahNumber","surahName","SWRConfig","value","div","className","layoutStyle","pageContainer","flow","flowItem","ReflectionBodyContainer","scrollToTop","scrollWindowToTop","initialChapterId","initialVerseNumber","toString","render","body","surahAndAyahSelection","getStaticProps","params","verseKey","String","chaptersData","getAllChaptersData","isValidVerseKey","notFound","chapterNumber","getVerseAndChapterNumbersFromKey","quranFont","mushafLines","getQuranReaderStylesInitialState","translations","getTranslationsInitialState","selectedTranslations","verseReflectionUrl","makeAyahReflectionsUrl","surahId","mushafId","getMushafId","mushaf","apiParams","getDefaultWordFields","translationFields","join","from","to","versesUrl","makeVersesUrl","verseReflectionsData","versesData","Promise","all","getAyahReflections","fetcher","props","getChapterData","revalidate","ONE_WEEK_REVALIDATION_PERIOD_SECONDS","error","REVALIDATION_PERIOD_ON_ERROR_SECONDS","getStaticPaths","paths","useCallback","useState","dynamic","DataFetcher","REFLECTIONS_OBSERVER_ID","TafsirSkeleton","useGlobalIntersectionObserverWithDelay","isLoggedIn","postReflectionViews","postReflectionViewsToQuranReflect","ReflectionSurahAndAyahSelection","ssr","ReflectionBody","loading","selectedChapterId","setSelectedChapterId","selectedVerseNumber","setSelectedVerseNumber","onReflectionViewed","reflectionContainer","postId","getAttribute","catch","threshold","renderBody","data","queryKey","classNames","range","styles","Skeleton","tafsirSkeletonItem","ayahSekletonItem","map","i","tafsirSkeletonItem1","tafsirSkeletonItem2","tafsirSkeletonItem3","DEFAULT_ROOT_MARGIN","OBSERVER_THRESHOLD","QURAN_READER_OBSERVER_ID","READING_MODE_ROOT_MARGIN","getOptions","isReadingPreference","rootMargin","getObservedVersePayload","element","page","hizb","children","isRounded","isSquared","isActive","span","skeleton","baseSize","active","rounded","squared","content","useLayoutEffect","useRef","useBrowserLayoutEffect","isDev","process","env","NEXT_PUBLIC_VERCEL_ENV","setIntersectionDebuggerNodeText","text","intersectionDebuggerNode","textContent","root","onElementVisible","observerId","elementIdKey","delayForMSKey","timeouts","Map","updateEntry","entries","forEach","visibleEntry","elementIntersectionDebuggerNode","nodes","target","getElementsByClassName","length","targetNode","elementId","dataset","delayForMS","isIntersecting","current","set","window","setTimeout","clearTimeout","get","delete","hasIOSupport","IntersectionObserver","undefined","disconnect","BASE_OG_URL","getDefaultOgImageUrl","getAboutTheQuranImageUrl","getLearningPlansImageUrl","url","makeFollowUserUrl","makeGetUserReflectionsUrl","makePostReflectionViewsUrl","makeIsUserFollowedUrl","makeQuranicCalendarPostOfWeekUrl","postRequest","privateFetcher","followUser","usernameOrId","isUserFollowed","getAllUserReflections","getQuranicCalendarPostOfWeek","weekNumber","makeUrl","getPrefixedUrl","userNameOrId","Tab","MostPopular","Newest","Feed","Public","stringify","STAGING_API_HOST","PRODUCTION_API_HOST","isProd","API_HOST","makeQuranReflectApiUrl","path","parameters","client_auth_token","NEXT_PUBLIC_QURAN_REFLECT_TOKEN","tab","surahNumber","feed","makeReflectionViewsUrl","method","headers","ayahReflectionsUrl","ONE_DAY_REVALIDATION_PERIOD_SECONDS","ONE_MONTH_REVALIDATION_PERIOD_SECONDS"],"sourceRoot":""}